草庐IT

Java NIO 服务器

全部标签

golang udp客户端无法从服务器接收消息

我可以成功地从客户端向服务器发送消息。但是当我尝试回复消息给客户端时,客户端却无法接收到消息。客户:conn,_:=net.Dial("udp",serv_addr:port)deferconn.close()buf:=[]byte("Hey,server")conn.Write(buf)recv:=make([]byte,1024)fmt.Println("Reading...\n")conn.Read(recv)服务器:addr,_:=net.ResolveUDPAddr("udp",addr:port)msg:=make([]byte,1024)conn,_:net.Listen

json - 为什么我的 Go 服务器不能正确解码从客户端发送的 JSON?

我正在为一个项目用Go语言编写服务器,其中涉及从客户端接收JSON数据并发回JSON响应。当我运行代码时,我发出的任何请求都可以正常工作,但响应始终为空。这是我的服务器的代码。typeAddPlayerDatastruct{namestring}funcmain(){router:=mux.NewRouter()router.HandleFunc("/",func(whttp.ResponseWriter,r*http.Request){fmt.Println("[SUCCESS]Requestfrom",r.RemoteAddr)decoder:=json.NewDecoder(r.

go - 在一个 Go 应用程序中提供 gRPC 和 Restful 服务

我有一个用Go编写的restful应用程序,现在我必须让这个应用程序也充当gRPC服务器(我已经创建了所需的文件)。我在端口8000上运行了restful端点,现在我有下一个问题:我可以在同一个实例中同时使用grpc和restful应用程序吗?我应该分配一个不同的端口来为gRPC服务吗?在这种情况下推荐的方法是什么?因为grpcstub将只是被我们的一些微服务消耗,但其余的将被被一些应用程序的前端消耗如果我可以为两者提供服务,我应该如何初始化服务器? 最佳答案 是的!如果您想将gRPC作为RESTful服务来提供服务,可以使用gRP

http - Golang 在服务器运行时获得 404

我正在尝试按照教程使用Golang和路由包Gorilla/mux运行一个基本的网络应用程序。服务器运行正常,但无论我在浏览器中输入什么,它都拒绝找到index.html文件,总是返回404。代码如下:主.gopackagemainimport("database/sql""fmt""net/http""github.com/gorilla/mux"_"github.com/lib/pq")const(host="localhost"port=5432user="postgres"password="0102"dbname="bird_encyclopaedia")funcnewRout

go - 如何使用 golang 服务 angular?

我正在尝试使用http.FileServe提供角度应用程序的目录。但是我得到了该文件夹中的文件列表。我正在使用gorillamux包。如果它用于简单的html文件,它确实有效,但不适用于Angular应用程序。router:=mux.NewRouter()router.PathPrefix("/").Handler(http.FileServer(http.Dir("./static/src/app")))这会列出./static/src/app目录中的所有文件,当转到该url时。我应该如何正确地做到这一点? 最佳答案 Angula

performance - 简单的 golang http rest 服务在负载下挂起

我正在尝试测试golang如何处理大负载,以将其与我们当前使用Java制作的应用程序进行比较。我所做的是一个简单的echorest服务(我只是添加了代码的重要部分)://ReturndefaultmessageforrootroutingfuncIndex(whttp.ResponseWriter,r*http.Request){fmt.Fprintf(w,"Hello,%q",html.EscapeString(r.URL.Path))}//Mainfunctionfuncmain(){router:=mux.NewRouter()//.StrictSlash(true)router

http - 在 golang 服务器中面临 cors 问题

我在我的Go服务器中编写了这段代码:funcmain(){r:=chi.NewRouter()cors:=cors.New(cors.Options{AllowedOrigins:[]string{"*"},AllowOriginFunc:func(r*http.Request,originstring)bool{returntrue},AllowedMethods:[]string{"GET","POST","PUT","DELETE","OPTIONS"},AllowedHeaders:[]string{"Accept","Authorization","Content-Type"

mongodb - 当我尝试调用 API 时,本地服务器返回 "http: panic serving [::1]:52781: runtime error: invalid memory address or nil pointer dereference"

关闭。这个问题需要debuggingdetails.它目前不接受答案。编辑问题以包含desiredbehavior,aspecificproblemorerror,andtheshortestcodenecessarytoreproducetheproblem.这将有助于其他人回答问题。关闭3年前。Improvethisquestion我按照指南在这里编写了mongodbAPI:https://www.thepolyglotdeveloper.com/2019/02/developing-restful-api-golang-mongodb-nosql-database/指南的代码运行

go - 如何访问代理的 grpc 服务中的请求 header 。 golang 中的 grpc 网关

我有一个由grpc-gateway代理的grpc服务器。当我对网关端点进行HTTP调用时,会调用相应的grpc服务方法。现在,grpc服务实现接收到一个包含header的上下文。我不知道如何访问header。当我调试我的grpc服务并设置断点时,这是我的服务接收到的Context对象的结构。现在,如何获取任何HTTP请求header的值? 最佳答案 HTTPheader存储在元数据中。md,ok:=metadata.FromIncomingContext(ctx)应该可以获取传入的元数据。

go - 如何在 Go 项目目录结构中组织和分解服务?

假设我有一项服务可通过API与Github通信以创建和修改存储库。函数列表可能如下所示。对API发出的每个请求都有几个移动部分,因此我将其拆分为多个函数//github_service.gopackagemain//:show(GET)functionsfuncfindGithubRepository(...)funcfindGithubRepositoryRequestBuilder(...)funcfindGithubRepositoryUrl(...)//:create(POST)functionsfunccreateGithubRepository(...)funccreate